package eteam.aps.model.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import eteam.aps.common.entity.ParentEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 操作步骤记录表;
 *
 * @author LiuLei
 */
@ApiModel(value = "ScanProcessStep", description = "操作步骤记录表")
@TableName("zn_scan_process_step")
public class ScanProcessStep extends ParentEntity {

    /**
     * 条码;条码
     */
    @TableField("FBarCode")
    @ApiModelProperty(name = "条码", notes = "条码")
    private String fBarCode;

    /**
     * 工序编号;工序编号
     */
    @TableField("FScaPro")
    @ApiModelProperty(name = "工序编号", notes = "工序编号")
    private String fScaPro;

    /**
     * 工序名称;工序名称
     */
    @TableField("FProName")
    @ApiModelProperty(name = "工序名称", notes = "工序名称")
    private String fProName;

    /**
     * 操作员代码；操作员代码
     */
    @TableField("FOperatorCode")
    @ApiModelProperty(name = "操作员代码", notes = "操作员代码")
    private String fOperatorCode;

    /**
     * 操作员;操作员
     */
    @TableField("FOperator")
    @ApiModelProperty(name = "操作员", notes = "操作员")
    private String fOperator;

    /**
     * 操作时间;操作时间
     */
    @TableField("FOperateTime")
    @ApiModelProperty(name = "操作时间", notes = "操作时间")
    private LocalDateTime fOperateTime;

    /**
     * 操作描述;操作描述【0 编号，1 工序，2 人员】
     */
    @TableField("FOperationDescription")
    @ApiModelProperty(name = "操作描述", notes = "操作描述;操作描述【-1 已出报工，0 草稿，1 正常报工，2 工单，3 工序，4人员，5 物料】 ")
    private int fOperationDescription;

    /**
     * 生产状态;生产状态【-1 异常报工，0 草稿（默认），1 生产中，2 完工】
     */
    @TableField("FProductType")
    @ApiModelProperty(name = "生产状态", notes = "生产状态;生产状态【-1 异常报工，0 草稿（默认），1 生产中，2 完工，3 已出库，4 已发货】")
    private int fProductType;

    /**
     * 业务类型【 0 工单工序，1 工序质检，2测试工序】
     */
    @TableField("FBusinessType")
    @ApiModelProperty(name = "业务类型")
    private int fBusinessType;

    public int getfBusinessType() {
        return fBusinessType;
    }

    public void setfBusinessType(int fBusinessType) {
        this.fBusinessType = fBusinessType;
    }

    /**
     * 处理方式
     */
    @TableField("FHandleWay")
    @ApiModelProperty(name = "处理方式")
    private String fHandleWay;


    public ScanProcessStep() {
    }

    public ScanProcessStep(String fBarCode, String fScaPro, String fProName, String fOperatorCode, String fOperator, LocalDateTime fOperateTime, int fOperationDescription, int fProductType) {
        this.fBarCode = fBarCode;
        this.fScaPro = fScaPro;
        this.fProName = fProName;
        this.fOperatorCode = fOperatorCode;
        this.fOperator = fOperator;
        this.fOperateTime = fOperateTime;
        this.fOperationDescription = fOperationDescription;
        this.fProductType = fProductType;
    }

    public ScanProcessStep(String fBarCode, String fScaPro, String fProName, String fOperatorCode, String fOperator, LocalDateTime fOperateTime, int fOperationDescription, int fProductType,int fBusinessType) {
        this.fBarCode = fBarCode;
        this.fScaPro = fScaPro;
        this.fProName = fProName;
        this.fOperatorCode = fOperatorCode;
        this.fOperator = fOperator;
        this.fOperateTime = fOperateTime;
        this.fOperationDescription = fOperationDescription;
        this.fProductType = fProductType;
        this.fBusinessType = fBusinessType;
    }

    public String getfBarCode() {
        return fBarCode;
    }

    public void setfBarCode(String fBarCode) {
        this.fBarCode = fBarCode;
    }

    public String getfScaPro() {
        return fScaPro;
    }

    public void setfScaPro(String fScaPro) {
        this.fScaPro = fScaPro;
    }

    public String getfProName() {
        return fProName;
    }

    public void setfProName(String fProName) {
        this.fProName = fProName;
    }

    public String getfOperatorCode() {
        return fOperatorCode;
    }

    public void setfOperatorCode(String fOperatorCode) {
        this.fOperatorCode = fOperatorCode;
    }

    public String getfOperator() {
        return fOperator;
    }

    public void setfOperator(String fOperator) {
        this.fOperator = fOperator;
    }

    public LocalDateTime getfOperateTime() {
        return fOperateTime;
    }

    public void setfOperateTime(LocalDateTime fOperateTime) {
        this.fOperateTime = fOperateTime;
    }

    public int getfOperationDescription() {
        return fOperationDescription;
    }

    public void setfOperationDescription(int fOperationDescription) {
        this.fOperationDescription = fOperationDescription;
    }

    public int getfProductType() {
        return fProductType;
    }

    public void setfProductType(int fProductType) {
        this.fProductType = fProductType;
    }

    public String getfHandleWay() {
        return fHandleWay;
    }

    public void setfHandleWay(String fHandleWay) {
        this.fHandleWay = fHandleWay;
    }
}